モデラーにしか通じない、言語を素材に例えてみる話
概要
模型作ったりプロダクトのサンプル作ったりとかする時、
いろんな素材、いろんな材料があるよねー、
で、その辺、言語を素材に例えると何になるだろう、みたいな話。
Java
ガンプラ + 建材用ポリパテ。
硬化までが速い、出来上がったものが研磨に耐えうる、などのメリットはあるが、
パーツの形状が決まってる事によって構造の自由度が制限されていて、
「ここにファンネルを浮かそう」
「夢は寝て見ろ」
みたいな感じ。無理なものは無理。
ただ、ボールジョイントとかの規格のおかげで全体の規格化が楽で、規格の上なら交換やパーツ追加が容易。
プラで出来てるので10番台のヤスリでの研鑽にも耐えうる。
仕上げには600番台で水研ぎしよう。
綺麗な面を作る事が出来るので、塗装も可能。MAX塗りとか。
パーツの追加に対して、規格が強力ゆえの規格自体の物理的な重量限界があり、
俺「ウイングガンダムだー! 翼モリモリにしよう!」
バタン!(荷重変化に耐えきれず後ろに倒れる
とかがある。規格自体の変更や追加は凄く大変。
そのへんに置いておくとよく黄ばむ。黄ばむと弄るのが億劫になる。
仕舞うために作った訳じゃないんですけど。
JavaScript
プラ棒と接着剤。
どんな形状でもとれるので、
「えっそんなところからこんなものが!?」
みたいなビックリドッキリメカ感が容易に出せる。
面が存在せず、点と接続線だけで全体を作る感じ。
安価かつ軽量でどんな形でも作れるけど、
いざ改造するべーって時にどこに荷重かかってるんだかわかんなくなる。
新たに作った方が速い。
影絵につかったりとか予想外の用途も多い。
Python
0.5mmプラ板と接着剤。
面での接続や構成が可能。
面であるぶんだけ、隙のない立体物を作るのがちょっと面倒くさいけど、
わりかし簡単に大規模なものが作れるイメージ。
ただ、面で囲まれた部分がどうなってるかに大変困らせられる事が多い。
面の構成強度自体がそんなに高くないので、開けてなんか入れるのは簡単。
最悪上から別の面を貼ってしまえばいい グワーッ
0.5mmとわりかし薄いので3次元曲面も作れる。
作れるけどお前それどうすんの? 左右逆のパーツ作りにくくねえ? みたいなことが稀によくある。
Scala
インダストリアルクレイと未知の耐研磨素材。
マッシブなパーツをつくることが出来る+その形状変更、接続が容易。
ただし、冷えきったインダストリアルクレイを変形させるには、相応の熱量が必要。
デフォルトがちょっと固いので、造形に腕力が要る。
反面、細い部分にも信じられない強度が出る。こどもにささる。
表面が耐研磨性を備えるので、面がものすごく綺麗に作れる。
Ruby
粘土。
ルールや規範となる台座が必要で、小さなものなら精巧に作れるが、
大きくなってくると自重でへたる。
へたらないように作るには、広い土台の確保と、立体的になってきた時の応力分散などを自分で頑張る必要がある。
ほかの粘土と混ぜても全然問題ないところがスゴい。
PHP
海辺の砂浜の砂と水。
とりあえず見れるようになるまでが速い。わーい お城! お城!!
基本積んでくだけなので、形状をあとで変更したければ、粘土とは比較にならないレベルで厳格なルールが必要。
重力があって、風が吹いてて、硬化剤は無い。
何も考えずに上から別パーツを積むと下が崩れる。あと、混じって何積んだかわかんなくなる。
硬化剤のつもりで水をかけると、染み込んでほしくないところまで恐ろしく浸透していく。
水がしみ込みきった砂を使おう。初めっからだ。
あらかじめ「コレをしたら殺す、誰であろうとだ」みたいなルールブックと、違反者がいたら即座に殺しにいくライフセーバーがいるとよい。
あと、ひとたび波が来ると夏が終わる。
ひと夏の恋とバーベキューしたい。
その後二度と遭いたくない。
C++
光造形機か金型と液化ダイヤモンド。
人間が手でどうこうするものではないのでは、、ウッあたまが
3Dデータをつくればいいのよ、提督!!
他のでプロトタイプ作ってこいつでリプロダクト、
商品ラインにのっかるのはこいつで各所がレインフォースされた何か。
凄まじい荷重や衝撃に耐えたりする。ゆえに、こいつを一方的に研磨できるヤスリはない。
魂で削って魂も削られる。
NASAで開発された。
Obj-C
1mmのプラスチック版と10mm径の針金と軽量コンクリと念力。
頑丈で耐研磨性のある面がつくれる素材と、どうあっても変形しない不思議な物体と、それを浮かせられるだけの頑丈なライン。
物理法則を若干無視した配置とかが可能。
ファンネル可。
超次元ジオラマ可。
遠隔での動力伝達可。
ただし相応にマニアック。
モノを作るのは簡単なんだけど、海底とか宇宙空間など限られた場所でしか使えない。
みたいな。